package com.ruoyi.system.service.impl;

import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.system.domain.ScCourseClaAttend;
import com.ruoyi.system.domain.StudentApp;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.system.mapper.ScCourseClaMapper;
import com.ruoyi.system.domain.ScCourseCla;
import com.ruoyi.system.service.IScCourseClaService;

import javax.servlet.http.HttpServletRequest;

/**
 * 课程班级信息Service业务层处理
 * 
 * @author ruoyi
 * @date 2023-12-26
 */
@Service
public class ScCourseClaServiceImpl implements IScCourseClaService 
{
    @Autowired
    private ScCourseClaMapper scCourseClaMapper;

    /**
     * 查询课程班级信息
     * 
     * @param claId 课程班级信息主键
     * @return 课程班级信息
     */
    @Override
    public ScCourseCla selectScCourseClaByClaId(Long claId)
    {
        return scCourseClaMapper.selectScCourseClaByClaId(claId);
    }

    /**
     * 查询课程班级信息列表
     * 
     * @param scCourseCla 课程班级信息
     * @return 课程班级信息
     */
    @Override
    public List<ScCourseCla> selectScCourseClaList(ScCourseCla scCourseCla)
    {


        return scCourseClaMapper.selectScCourseClaList(scCourseCla);
    }

    @Override
    public List<ScCourseCla> selectClaByApp(HttpServletRequest request) {

        String teacherId = request.getParameter("staffId");
        String claName = request.getParameter("claName");
        String classType = request.getParameter("classType");
        int num = Integer.parseInt(request.getParameter("num"));
        int page = Integer.parseInt(request.getParameter("page"));

        return  scCourseClaMapper.selectByApp(teacherId,claName,classType,num,(page-1)*num);
    }

    @Override
    public List<ScCourseClaAttend> selectScCourseClaAttendList(ScCourseClaAttend scCourseClaAttend) {
        return scCourseClaMapper.selectScCourseClaAttendList(scCourseClaAttend);
    }

    @Override
    public List<ScCourseCla> selectScCourseClaSimpleList(String val) {
        return scCourseClaMapper.selectScCourseClaSimpleList(val);
    }

    /**
     * 新增课程班级信息
     * 
     * @param scCourseCla 课程班级信息
     * @return 结果
     */
    @Override
    public int insertScCourseCla(ScCourseCla scCourseCla)
    {

        scCourseCla.setCreateUser(SecurityUtils.getUsername());
        scCourseCla.setCreateTime(DateUtils.getNowDate());
        return scCourseClaMapper.insertScCourseCla(scCourseCla);
    }

    /**
     * 修改课程班级信息
     * 
     * @param scCourseCla 课程班级信息
     * @return 结果
     */
    @Override
    public int updateScCourseCla(ScCourseCla scCourseCla)
    {
        scCourseCla.setLastUpdateUser(SecurityUtils.getUsername());
        return scCourseClaMapper.updateScCourseCla(scCourseCla);
    }

    /**
     * 批量删除课程班级信息
     * 
     * @param claIds 需要删除的课程班级信息主键
     * @return 结果
     */
    @Override
    public int deleteScCourseClaByClaIds(Long[] claIds)
    {
        return scCourseClaMapper.deleteScCourseClaByClaIds(claIds);
    }

    /**
     * 删除课程班级信息信息
     * 
     * @param claId 课程班级信息主键
     * @return 结果
     */
    @Override
    public int deleteScCourseClaByClaId(Long claId)
    {
        return scCourseClaMapper.deleteScCourseClaByClaId(claId);
    }
}
